import request from '@/config/axios'

// 工单清单 VO
export interface OrderListVO {
  id: number // 自增主键，唯一标识每条记录
  platformSerialNumber: string // 平台流水号
  appealInfoSerialNumber: string // 申诉信息流水号
  userName: string // 用户姓名
  contactPhone: string // 联系电话
  appealInvolvedNumber: string // 申诉涉及号码
  communicationAddress: string // 通讯地址
  email: string // 电子邮箱
  complaintCode: string // 投诉编码
  appealEnterpriseLevelOne: string // 申诉企业一级
  mainComplaintEnterprise: string // 主投企业
  province: string // 所属省份
  prefectureLevelCity: string // 地级市
  classificationCodeOne: string // 分类码一
  classificationCodeTwo: string // 分类码二
  classificationCodeThree: string // 分类码三
  businessCodeOne: string // 业务码一
  businessCodeTwo: string // 业务码二
  businessCodeThree: string // 业务码三
  appealSource: string // 申诉来源
  appealDate: string // 申诉日期
  appealContent: string // 申诉内容
  ipAddress: string // IP地址
  hasAppealAttachment: string // 是否有申诉附件
  workOrderStatus: string // 工单状态
  appealResult: string // 申诉结果
  orderCreateTime: string // 创建时间
  nonAcceptanceReason: string // 不予受理原因
  nonAcceptanceReasonAccepted: string // 不予受理原因（受理）
}

// 工单清单 API
export const OrderListApi = {
  // 查询工单清单分页
  getOrderListPage: async (params: any) => {
    return await request.get({ url: `/report/order-list/page`, params })
  },

  // 查询工单清单详情
  getOrderList: async (id: number) => {
    return await request.get({ url: `/report/order-list/get?id=` + id })
  },

  // 新增工单清单
  createOrderList: async (data: OrderListVO) => {
    return await request.post({ url: `/report/order-list/create`, data })
  },

  // 修改工单清单
  updateOrderList: async (data: OrderListVO) => {
    return await request.put({ url: `/report/order-list/update`, data })
  },

  // 删除工单清单
  deleteOrderList: async (id: number) => {
    return await request.delete({ url: `/report/order-list/delete?id=` + id })
  },

  // 导出工单清单 Excel
  exportOrderList: async (params) => {
    return await request.download({ url: `/report/order-list/export-excel`, params })
  },

  // 获取日报数据 Excel
  getDayReport: async (params: any) => {
    return await request.get({ url: `/report/rpa-appeals-order/get-day-report`, params })
  },
}
